package api

import (
	"github.com/gin-gonic/gin"
	"go-base/internal/repository"
)

// GetUserHandler
// @Summary 根据手机号查询用户信息
// @Description 根据手机号查询用户信息
// @Tags 用户
// @Param phone path string true "手机号"
// @Accept  json
// @Produce  json
// @Success 200
// @Router /api/users/{phone} [get]
// @security ApiKeyAuth
func GetUserHandler(c *gin.Context) {
	params := Params{Ctx: c}
	phone := params.Param("phone")
	user, err := repository.GetUser(phone)
	if err != nil {
		sendDatabaseError(c, err.Error())
		return
	}
	sendQuerySuccess(c, user)
}

// ListUsersHandler
// @Summary 查询所有用户信息
// @Description 查询所有用户信息
// @Tags 用户
// @Accept  json
// @Produce  json
// @Success 200
// @Router /api/users [get]
// @security ApiKeyAuth
func ListUsersHandler(c *gin.Context) {
	users, err := repository.ListUsers()
	if err != nil {
		sendDatabaseError(c, err.Error())
		return
	}
	sendQuerySuccess(c, users)
}
